Determining a location of a mobile device

ABSTRACT

A method and an apparatus for determining a location of a mobile device. The location of a mobile device is determined accurately according to information which includes call data records of the mobile device. By employing a partial ellipse integral model, two physical world factors are taken into consideration in reducing the location uncertainty in call data records. The factors include: spatiotemporal constraints of the device&#39;s movement in the physical world and the telecommunication cell area&#39;s geometry information, which increase the accuracy of determining the location of a mobile device.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims the benefit of priority to Chinese PatentApplication No. 201410337953.7, filed Jul. 16, 2014, the contents ofwhich are incorporated herein by reference.

TECHNICAL FIELD

The present invention relates to locating a mobile device, and morespecifically, to a method and an apparatus for determining a location ofa mobile device.

BACKGROUND

A Call Data Record (“CDR”, also known as Call Detail Record) is a datarecord which is generated at a telecommunication provider and is relatedto setup and termination of a call performed by a user through a mobiledevice and/or any form of data update performed by the mobile device.The CDR can adopt different formats depending on different telecomproviders, and can record location information of the mobile device (andof the user who holds the mobile device) and time information of thecall. For example, the CDR can include information indicating aninitiator of the call (e.g., an ID of the mobile device), informationindicating a cell where the initiator initiates the call (e.g., an ID ofthe cell), information indicating a time at which the initiatorinitiates the call, information indicating a receiver of the call (e.g.,an ID of a mobile device), information indicating a cell where thereceiver is located (e.g., an ID of the cell), and a duration of thecall. In many applications such as Smarter City, the CDR has become animportant data source to predict traffic state changes of the city andthe like, through analysis of which the location of the mobile device orthe user and a changing trend thereof can be determined.

However, if the location of the mobile device is determined based on theCDR alone, only the cell where the mobile device is located can bedetermined. The coverage of the cell is relatively large, the locationof the mobile device is determined with a low accuracy. Due to changesin wireless signal strength, when the mobile device is located at anedge of the cell, it can be handed over between the cell and an adjacentcell repeatedly. In this case, the accuracy is low because the locationof the mobile device is determined based on an uncertain CDR.

SUMMARY

In view of the above, the present invention provides a method and anapparatus for determining a location of a mobile device more accuratelyaccording to CDRs of the mobile device and other information.

According to an aspect of the present invention, there is provided amethod for determining a location of a mobile device. The CDRs of themobile device are analyzed to determine a first cell where the mobiledevice resided and time which the mobile device spent in moving from thefirst cell to a second cell. Probability densities are determined forthe mobile device which is located at respective locations within thefirst cell, based on a moving speed of the mobile device and the time.The probability densities determine possible locations of the mobiledevice within the first cell.

According to another aspect of the present invention, there is providedan apparatus for determining a location of a mobile device. An analyzingdevice is configured to analyze CDRs of the mobile device to determine afirst cell where the mobile device resided and time which the mobiledevice spent in moving from the first cell to a second cell. Aprobability density determining device is configured to determineprobability densities that the mobile device was located at respectivelocations within the first cell, based on a moving speed of the mobiledevice and the time. A location determining device is configured todetermine possible locations of the mobile device within the first cell,according to the probability densities.

To determine the location with a higher accuracy using the method andthe apparatus according to the above aspects of the present invention,the location of the mobile device is determined by the CDRs of themobile device (the cell where it resided and the cell to which it ishanded over) and the moving ability of the mobile device per se is takeninto account.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Features and advantages of the present invention will become apparent,through description of embodiments of the present invention.

FIG. 1 shows an exemplary computer system/server 12 which is applicableto implement the embodiments of the present invention;

FIG. 2A, FIG. 2B and FIG. 2C illustrate schematic diagrams of coverageof a cell determined by using different methods.

FIG. 3 illustrates a schematic diagram of coverage of a first cell and asecond cell.

FIG. 4 illustrates a flowchart of a method for determining a location ofa mobile device according to an embodiment of the present invention.

FIG. 5 illustrates detailed operations of step S402 shown in FIG. 4.

FIG. 6 illustrates a schematic diagram of an error ellipse.

FIG. 7 illustrates a schematic diagram of an error ellipse drawn on thefirst cell and the second cell shown in FIG. 3A.

FIG. 8 illustrates a diagram of an example of probability densities thatthe mobile device was located at respective locations within the firstcell, which are determined by the method according to the presentinvention.

FIG. 9A and FIG. 9B illustrate diagrams of examples of probabilitydensities that the mobile device was located at respective locationswith the first cell, which are determined when a maximum allowablemoving speed of the mobile device is changed.

FIG. 10 illustrates a schematic diagram of three cells.

FIG. 11A and FIG. 11B illustrate diagrams of examples of probabilitydensities that the mobile device was located at respective locationswithin a cell in a case where there are three CDRs.

FIG. 12 illustrates a block diagram of an apparatus for determining alocation of a mobile device according to an embodiment of the presentinvention.

FIG. 13 is a diagram of an exemplary structure of a probability densitydetermining device 102 shown in FIG. 12.

DETAILED DESCRIPTION

Preferred embodiments will be described in detail with reference to theaccompanying drawings, in which the preferable embodiments of thepresent invention have been illustrated. The present invention can beimplemented in various manners, and thus should not be construed to belimited to the embodiments illustrated herein.

In FIG. 1, in which an exemplary computer system/server 12 is shown inthe form of a general-purpose computing device. The components ofcomputer system/server 12 includes, at least one processor or processingunits 16, a system memory 28, and a bus 18 that couples various systemcomponents.

Bus 18 represents at least one type of bus structure, including a memorybus or memory controller, a peripheral bus, an accelerated graphicsport, and a processor or local bus using any of a variety of busarchitectures. By way of example, and not limitation, such architecturesinclude Industry Standard Architecture (ISA) bus, Micro ChannelArchitecture (MCA) bus, Enhanced ISA (EISA) bus, Video ElectronicsStandards Association (VESA) local bus, and Peripheral ComponentInterconnect (PCI) bus.

Computer system/server 12 typically includes a variety of computersystem readable media, which are accessible by computer system/server12, and includes both volatile and non-volatile media, removable andnon-removable media.

System memory 28 can include computer system readable media in the formof volatile memory, such as random access memory (RAM) 30 and/or cachememory 32. Computer system/server 12 includes otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 34 can be provided forreading from and writing to a non-removable, non-volatile magnetic media(not shown and typically called a “hard drive”). Although not shown, amagnetic disk drive for reading from and writing to a removable,non-volatile magnetic disk (e.g., a “floppy disk”), and an optical diskdrive for reading from or writing to a removable, non-volatile opticaldisk such as a CD-ROM, DVD-ROM or other optical media can be provided.In such instances, each can be connected to bus 18 by at least one datamedia interface. As will be further described below, memory 28 caninclude at least one program product having a set of program modulesthat are configured to carry out the functions of embodiments of theinvention.

Program/utility 40, having a set of program modules 42, can be stored inmemory 28 by way of example, and not limitation, as well as an operatingsystem, at least one application program, other program modules, andprogram data. Each of the operating system, at least one applicationprogram, other program modules, and program data or some combinationthereof, can include an implementation of a networking environment.Program modules 42 generally carry out the functions and/ormethodologies of embodiments of the invention as described herein.

Computer system/server 12 can communicate with at least one externaldevice 14 such as a keyboard, a pointing device, a display 24; at leastone device that enables a user to interact with computer system/server12; and/or any devices (e.g., network card, modem) that enable computersystem/server 12 to communicate at least one other computing device.Such communication can occur via Input/Output (I/O) interfaces 22.Further, computer system/server 12 can communicate with at least onenetwork such as a local area network (LAN), a general wide area network(WAN), and/or a public network (e.g., the Internet) via network adapter20. As depicted, network adapter 20 communicates with the othercomponents of computer system/server 12 via bus 18. It should beunderstood that although not shown, other hardware and/or softwarecomponents can be used in conjunction with computer system/server 12.Examples, include: microcode, device drivers, redundant processingunits, external disk drive arrays, RAID systems, tape drives, and dataarchival storage systems.

With reference now to the accompanying drawings, a method and anapparatus for determining a location of a mobile device according toembodiments of the present invention will be described in detail.

In an embodiment of the present invention, the mobile device can make acontinuous call. Specifically, the mobile device can start the call in afirst cell, and can move from the first cell to a second cell during thecall. When the mobile device started the call in the first cell, a firstCDR was generated at a telecommunication provider, and the first CDR caninclude information indicating the first cell where the mobile deviceresided and a time (hereinafter referred to as a first time) at whichthe mobile device started the call in the first cell. Alternatively, thefirst CDR can be generated at a certain time (which can be any time)after the mobile device started the call in the first cell, in whichcase the first CDR can at least include information indicating the firstcell where the mobile device resided and the time (hereinafter alsoreferred to as the first time). Furthermore, as long as the mobiledevice in a calling state moves from the first cell to the second cell,e.g., moves to a common boundary between the first cell and the secondcell or moves into the second cell, the mobile device will performhandover from the first cell to the second cell. A second CDR isgenerated at the telecommunication provider, and the second CDR can atleast include information indicating the second cell to which the mobiledevice is handed over and a time at which the handover is performed. Asecond time is a time at which the mobile device moves to the commonboundary between the first cell and the second cell.

To determine a rough range of the location of the mobile device, themobile device moves out of the first cell by judging depending if thesecond CDR described above exists. In a time interval corresponding tothe first CDR and the second CDR, the mobile device moves from a certainlocation within the first cell to the common boundary between the firstcell and the second cell. The moving speed of the mobile device islimited, and in turn a maximum movement distance thereof is alsolimited, the mobile device can only be located at a location from whichthe mobile device can reach the common boundary within the timeinterval. The location distance from which any point on the commonboundary does not exceed the maximum movement distance. To obtain a moreaccurate range of the location of the mobile device within the firstcell on this information, the rough range of the location of the mobiledevice can be further narrowed. Based on this understanding, theembodiments of the present invention are proposed.

A boundary and coverage of a cell can be determined by using variousmethods. For example, the coverage of the cell can be determined byusing Voronoi tessellation. FIG. 2A illustrates an example of coverageof a cell determined by using the Voronoi tessellation, where theboundary of each cell is in a polygonal shape. To determine boundariesand coverage of respective cells for each location within a targetregion, a cell which provides a best service quality (e.g., a bestsignal quality) at the location can be determined in a manner of roadtest. FIG. 2B illustrates an example of cell coverage determined byusing the road test method, where different gray scales are used torepresent coverage of respective cells. The cell boundary determined inthe above two manners can be called a “hard” boundary. In practice, areception quality of a radio wave emitted from a base station of a cellat a same location can change from time to time due to reasons such asblockage by a building. The boundary and coverage of the cell can alsochange from time to time and have uncertainty. Taking such uncertaintyinto consideration, probability densities of the cell boundary atdifferent locations can be determined by using a transmission model ofthe radio wave from the base station. The boundary and the coverage ofthe cell can be determined based on the magnitudes of the probabilitydensities. The cell boundary thus determined can be referred to as a“soft” boundary. FIG. 2C illustrates a schematic diagram of the softboundary of the cell thus determined, and respective curves in FIG. 2Crepresent locations with the same probability density, respectively.

The boundaries and the coverage of the first cell and the second cellcan be determined respectively, so that the common boundary between thefirst cell and the second cell can be determined. FIG. 3 illustrates aschematic diagram of the coverage of the first cell and the second celldetermined by using the Voronoi tessellation. This is drawn on the FIG.3 map, where reference numbers 301, 302 and 303 indicate the coverage ofthe first cell, the coverage of the second cell, and the common boundarybetween the first cell and the second cell respectively of a certainregion. Hereinafter, the embodiments of the present invention aredescribed by taking the cell shown in FIG. 3 as an example.

With reference now to FIG. 4, a flowchart of the method for determininga location of a mobile device according to an embodiment of the presentinvention is described. In step S401, CDRs of the mobile device can beanalyzed to determine a first cell where the mobile device resided andtime which the mobile device spent in moving from the first cell to thesecond cell. Specifically, the first cell where the mobile deviceresided can be determined based on the first CDR described above. Thesecond cell to which the mobile device was handed over can be determinedaccording to the second CDR. The time which the mobile device spent inmoving from the first cell to the second cell can be determined bycalculating a difference between the second time and the first time. Instep S402, probability densities that the mobile device was located atrespective locations within the first cell can be determined based on amoving speed of the mobile device and the time which the mobile devicespent in moving from the first cell to the second cell.

In the embodiment of the present invention, a partial ellipse integralmodel is proposed to determine the probability densities that the mobiledevice was located at the respective locations within the first cell. Asa result of an initial location (a start point from which the mobiledevice moves) of the mobile device within the first cell and a finallocation (a terminal point to which the mobile device moves) on thecommon boundary between the first cell and the second cell beingunknown, any location (hereinafter referred to as a first location)within the first cell can be selected as the start point from which themobile device moved. Any location (hereinafter referred to as a secondlocation) on the common boundary can be selected as the terminal pointto which the mobile device moved. A partial error ellipse is establishedbased on the first location and the second location as well the maximummovement distance of the mobile device to determine all possiblelocations during the mobile device moving from the first location to thesecond location and probability densities that the mobile device waslocated at these locations. In turn, by integrating the probabilitydensities for all possible values of the first location and the secondlocation, the probability densities that the mobile device was locatedat the respective locations within the first cell can be determined.

With reference now to FIG. 5, operations in step S402 will be describedin detail. In step S4021, the maximum movement distance of the mobiledevice can be determined based on the moving speed of the mobile deviceand the time which the mobile device spent in moving from the first cellto the second cell. Specifically, the maximum movement distance of themobile device can be determined by multiplying the moving speed of themobile device with the time. In order to determine all locations atwhich the mobile device can arrive during movement, the moving speed ofthe mobile device can be set to a maximum allowable moving speed of themobile device. The maximum allowable moving speed can be determinedaccording to a plurality of factors, including, a region where themoving device is located (e.g., a city or a mountainous region), a roadwhere the mobile device is located (e.g., an urban road or a highway),and movement mode of a user who holds the mobile device (e.g., walkingor driving). For example, if the first cell is located in the city, themaximum allowable moving speed can be determined to a maximum speedlimit for roads in the city, e.g., 80 km/h. Or, if the movement mode ofthe user who holds the mobile device is walking, the maximum allowablemoving speed can be set to a maximum speed of human walking, e.g., 6km/h. In step S4022, the error ellipse can be established with the firstlocation within the first cell and the second location on the commonboundary between the first cell and the second cell being focuses, andwith the maximum movement distance being a length of a major axis. Asdescribed above, the first location can be any location within the firstcell and the second location and can be any location on the commonboundary between the first cell and the second cell.

FIG. 6 illustrates a schematic diagram of the error ellipse. As shown inFIG. 6, points P₁ and P₂ are focuses and correspond to the firstlocation and the second location respectively. The length of the majoraxis of the error ellipse is denoted by 2 a and is equal to the maximummovement distance (denoted as Smax). A distance between the point P₁ andthe point P₂ is denoted by 2 c and is known. Therefore, a length of aminor axis of the error ellipse 2b=2√{square root over (a²−c²)} and anarea of the ellipse A=πab can be calculated. FIG. 7 illustrates aschematic diagram of the error ellipse drawn based on the first cell andthe second cell shown in FIG. 3, where the map which is a background inFIG. 3 is omitted for simplicity.

According to a nature of an ellipse, it can be known that a sum ofdistances from any point on the ellipse to the two focuses is equal tothe length of the major axis of the ellipse, i.e., the maximum movementdistance. When the mobile device moves from the first location P₁ to thesecond location P₂, no matter which route the mobile device moves along,the mobile device is always located within the error ellipse as long asthe moving speed thereof does not exceed the maximum allowable movingspeed.

Further, it can be known from the CDRs of the mobile device that beforethe mobile device arrives at the second location, the mobile device willnot exceed the first cell. Thus, the mobile device will not reach aportion within the error ellipse but outside the first cell. Therefore,a range of all locations at which the mobile device can arrive duringthe movement can be narrowed from the entire error ellipse to a portionof the error ellipse within the first cell, i.e., a common regionbetween the error ellipse and the first cell. The common region is apart of the complete error ellipse established previously, the commonregion can also be referred to as a partial error ellipse. In theexample shown in FIG. 7, the range of all the locations at which themobile device can arrived during the movement can be narrowed from theentire error ellipse to a portion of the error ellipse located withinthe first cell (a portion filled with “x”).

Without any prior knowledge about the location of the mobile devicewithin the above common region, it can be assumed that the probabilitydensities that the mobile device was located at respective locations inthe common region are the same, i.e., the mobile device is assumed to bedistributed uniformly within the common region. If the location of themobile device within the common region is denoted as l^(1,2), aprobability density function f(l^(1,2)|P₁,P₂) denoting the probabilitydensities that the mobile device was located at the respective locationswithin the common region can be expressed as:

$\begin{matrix}{{f\left( {\left. l^{1,2} \middle| P_{1} \right.,P_{2}} \right)} = \frac{1}{A - E}} & (1)\end{matrix}$where A is an area of the above-described error ellipse, and E is anarea of a portion of the error ellipse which is located outside thefirst cell and excluded as described above. Thus, A-E is the area of thecommon region or the partial error ellipse.

In step S4023, the probability densities that the mobile device waslocated at the respective locations within the first cell can bedetermined according to the probability density function denoting theprobability densities that the mobile device was located at therespective locations within the common region between the error ellipseand the first cell, and a joint distribution function of the firstlocation within the first cell and the second location on the commonboundary.

In step S4022, for the point P₁ (the first location) selected from thefirst cell and the point P₂ (the second location) selected from thecommon boundary, the range of all the locations at which the mobiledevice can arrive during the movement is determined. The probabilitydensities that the mobile device was located at the respective locationswithin this range is calculated. However, in practice, the point P₁ canbe any point within the first cell, and the point P₂ can be any point onthe common boundary. Thus, the probability density function denoting theprobability densities that the mobile device was located at therespective locations within the partial error ellipse determinedaccording to each pair of the point P₁ and the point P₂ can beintegrated for all possible locations of the point P₁ and the point P₂.This will determine the probability densities that the mobile device waslocated at the respective locations within the first cell.

Specifically, a joint distribution function f(P₁, P₂) of the point P₁located within the first cell and the point P₂ located on the commonboundary between the first cell and the second cell can be calculated.In an embodiment of the present invention, it can be assumed that thepoint P₁ and the point P₂ are independent of each other and areuniformly distributed in their respective regions, then f(P₁, P₂) can beexpressed as:f(P ₁ ,P ₂)=f(P ₁)×f(P ₂)  (2)where f(P₁) is a distribution function of the point P₁ located withinthe first cell, which can be denoted as 1/A_(cell), with A_(cell) beingthe area of the first cell, and f(P₂) is a distribution function of thepoint P₂ located on the common boundary between the first cell and thesecond cell, which can be denoted as 1/L_(border), with L_(border) beinga length of the common boundary.

The probability density function f(l^(1,2)|P₁,P₂) can be integrated forall the possible locations of the point P₁ and the point P₂, so as todetermine a probability density function f(l^(1,2)) denoting theprobability densities that the mobile device was located at therespective locations within the first cell:f(l ^(1,2))=∫∫f(l ^(1,2) |P ₁ ,P ₂)·f(P ₁ ,P ₂)dP ₁ dP ₂  (3)

According to the probability density function f(l^(1,2)), theprobability densities that the mobile device was located at therespective locations within the first cell can be determined.

Returning to FIG. 4, in step S403, the possible locations of the mobiledevice within the first cell can be determined according to theprobability densities that the mobile device was located at therespective locations within the first cell. Specifically, a portionwhose probability density is 0 within the first cell can be determinedas a location at which the mobile device is impossible to arrive, and aportion whose probability density is not 0 within the first cell can bedetermined as a possible location of the mobile device. Alternatively, aportion whose probability density is less than a first threshold withinthe first cell can be determined as a location at which the mobiledevice is impossible to arrive, and the remaining portion within thefirst cell is determined as a possible location of the mobile device.Further, it is also possible to determine a magnitude of a probabilitythat the mobile device was located at each location according to thecalculated probability density of the location.

FIG. 8 illustrates a diagram of the probability densities that themobile device was located at the respective locations within the firstcell, which are determined according to the above method. In FIG. 8, aregion 801 filled with “x” within the first cell represents a regionwhose probability density is 0, i.e., a region at which the mobiledevice is impossible to arrive. A remaining region within the first cellis a region at which the mobile device is possible to arrive, in whichrespective curves represent locations with same probability densities. Aregion with a deeper color (substantially a region closer to the commonboundary between the first cell and the second cell) has a greaterprobability density. According to the determined probability densitiesas shown by circles on the common boundary in FIG. 8, the possiblelocations of the mobile device on the common boundary can also be known.

When the location of the mobile device is determined, the CDRs of themobile device are considered to determine a location change of themobile device. Also, the coverage of the cell and a moving ability ofthe mobile device per se are taken into account, so that the locationdetermined thereby has a higher accuracy.

In the above embodiment, the possible locations of the mobile device aredetermined in a case where the maximum allowable moving speed of themobile device is known or can be determined according to some factors,however, this is not limitative. In a case where the maximum allowablemoving speed of the mobile device is unknown, a plurality of maximumallowable moving speeds can be set. For example, a plurality of maximumallowable moving speeds corresponding to a plurality of movement modessuch as walking, driving, taking trains or the like, and the abovemethod can be performed for each of the maximum allowable moving speeds.This is done in order to determine the probability densities that themobile device was located at the respective locations within the firstcell. If the mobile device was located at the respective locationswithin the first cell determined for a certain maximum allowable movingspeed is 0, it can be determined that the maximum allowable moving speedis incorrect. Thus, it can be determined that it is impossible for themobile device to move in a corresponding movement mode. In a case wherethe maximum allowable moving speed of the mobile device changes, theprobability densities that the mobile device was located at therespective locations within the first cell changes correspondingly. FIG.9A illustrates the probability densities that the mobile device waslocated at the respective locations within the first cell, which aredetermined when the maximum allowable moving speed becomes smaller thanthat in the case shown in FIG. 8. FIG. 9B illustrates the probabilitydensities that the mobile device was located at the respective locationswithin the first cell, which are determined when the maximum allowablemoving speed becomes greater than that in the case shown in FIG. 8.According to FIG. 9A and FIG. 9B, when the maximum allowable movingspeed decreases, the possible locations at which the mobile device waslocated within the first cell (i.e. a region which is not filled with“x” within the first cell) also decrease. On the contrary, when themaximum allowable moving speed increases, the possible locations of themobile device at which the mobile device was located within the firstcell also increase.

In the above embodiment, the method for determining the location of themobile device is described with respect to a case of two CDRs (i.e., thefirst CDR generated when the mobile device was located in the first celland the second CDR generated when the mobile device moved from the firstcell to the common boundary between the first cell and the second cell),however, this is not limitative. The present invention is alsoapplicable for a case of three or more CDRs.

For example, it is assumed that there is a third cell in FIG. 3, whichis located on an upper left of the first cell. In FIG. 10, during a callthe mobile device enters the first cell from the third cell, and thenenters the second cell from the first cell. In this process, three CDRscan be generated. Specifically, when the mobile device arrived at acommon boundary between the third cell and the first cell, the mobiledevice was handed over from the third cell to the first cell. At thistime a first CDR can be generated, which includes a time at which thehandover was performed, and information indicating the cell to which themobile device was handed over, etc. Further, when the mobile deviceperformed a data update in any form, e.g. a location update, in thefirst cell, a second CDR can be generated. This indicates a time atwhich the update was performed and the cell where the mobile device waslocated. When the mobile device moved from the first cell to the commonboundary between the first cell and the second cell, the mobile devicewill be handed over from the first cell to the second cell. At this timea third CDR can be generated, which includes a time at which thehandover was performed and information indicating the cell to which themobile device was handed over, etc.

For the movement of the mobile device from the common boundary betweenthe third cell and the first cell to the first cell, a partial errorellipse can be established in a manner similar to that of the embodimentdescribed above. The probability densities that the mobile device waslocated at respective locations within the first cell can be determinedbased on the partial error ellipse, thereby the possible locations ofthe mobile device within the first cell for the movement are determined.In addition, for the movement of the mobile device from the first cellto the common boundary between the first cell and the second cell, apartial error ellipse can be established in a manner similar to that ofthe embodiment described above. The probability densities that themobile device was located at the respective locations within the firstcell can be determined based on this partial error ellipse. Therefore,the possible locations of the mobile device in the first cell for thismovement are determined.

Specifically, for the movement of the mobile device from the commonboundary between the third cell and the first cell to the first cell,the probability densities f(l^(3,1)) that the mobile device was locatedat the respective locations within the first cell can be determined by,for example, a formula below:f(l ^(3,1))=∫∫f(l ^(3,1) |P ₃ ,P ₁)·f(P ₃ ,P ₁)dP ₃ dP ₁  (4)where P₃ is any point on the common boundary between the third cell andthe first cell, P₁ is any point within the first cell, l^(3,1) is alocation in the partial error ellipse established on the basis of thepoint P₃ and the point P₁ in the manner described above,f(l^(3,1)|P₃,P₁) is a probability density function representingprobability densities that the mobile device was located at respectivelocations within the partial error ellipse, and f(P₃,P₁) is a jointdistribution function of the point P₃ which is located on the commonboundary between the third cell and the first cell and the point P₁which is located within the first cell. Likewise, for the movement ofthe mobile device from the first cell to the common boundary between thefirst cell and the second cell, the probability densities f(l^(1,2))that the mobile device was located at the respective locations withinthe first cell can be determined by, for example, a formula below:f(l ^(1,2))=∫∫f(l ^(1,2) |P ₁ ,P ₂)·f(P ₁ ,P ₂)dP ₁ dP ₂  (5)where P₂, l^(1,2), f(l^(1,2)|P₁,P₂) and f(P₁,P₂) have the same meaningsas those described with respect to the above formula (3).

Different from the embodiment of two CDRs as described above, when theprobability densities are calculated by using the above formulae (4) and(5), f(P₃,P₁) and f(P₁,P₂) will be restricted by a joint distribution ofthe three points P₃, P₁ and P₂. Specifically, for the points P₃, P₁ andP₂, since the mobile device moved continuously, i.e., moved continuouslyfrom the point P₃ to the point P₂ through the point P₁, the partialerror ellipse established based on the points P₃ and P₁ (which indicatesa range of all possible locations of the mobile device when it movedfrom the point P₃ to the point P₁) and the partial error ellipseestablished based on the points P₁ and P₂ (which indicates a range ofall possible locations of the mobile device when it moved from the pointP₁ to the point P₂) must have a common part. The points P₃, P₁ and P₂can only be points that enable the above two partial error ellipses tohave the common part, therefore P₃, P₁ and P₂ in f(P₃,P₁) and f(P₁,P₂)in the above formulae (4) and (5) are limited to only the points P₃, P₁and P₂ that can enable the above two partial error ellipses to have thecommon part. In this case, the points P₃, P₁ and P₂ that enable theabove two partial error ellipses to have the common part can be found bya method of exhaustion, then f(l^(3,1)) and f(l^(1,2)) can becalculated. FIG. 11A illustrates a schematic diagram of the probabilitydensities f(l^(3,1)) that the mobile device was located at therespective locations within the first cell, which are determined for themovement of the mobile device from the common boundary between the thirdcell and the first cell to the first cell. The possible locations of themobile device (i.e., the possible locations of P₁) within the first cellfor the movement are indicated by a region other than a region filledwith “x” within the first cell, and FIG. 11B illustrates a schematicdiagram of the probability densities f(l^(1,2)) that the mobile devicewas located at the respective locations within the first cell. They aredetermined for the movement of the mobile device from the first cell tothe common boundary between the first cell and the second cell, wherethe possible locations of the mobile device (i.e., the possiblelocations of P₁) within the first cell for the movement are indicated bya region other than a region filled with “x” within the first cell.According to FIG. 11A and FIG. 11B, it can be known that, in the casewhere there are the above three CDRs, the probability densities that themobile device was located at the respective locations within the firstcell can also be determined, so that the possible locations of themobile device within the first cell can be known. Similar to theembodiment described above, it is also possible to determine thelocation of the mobile device on the common boundary between the thirdcell and the first cell (as shown by circles on the common boundary) andthe location of the mobile device on the common boundary between thefirst cell and the second cell (as shown by circles on the commonboundary) according to the probability densities.

The respective embodiments for implementing the method of the presentinvention have been described with reference to the accompanyingdrawings hereinbefore. Those skilled in the art can understand that theabove method can be implemented in software, in hardware, or in acombination thereof. Further, those skilled in the art can understandthat by implementing the respective steps in the above method insoftware, in hardware, or in a combination thereof, an apparatus fordetermining a location of a mobile device based on the same inventiveconcept can be provided. Even if a hardware configuration of theapparatus is the same as that of a general-purpose processing apparatus,the apparatus will exhibit characteristics different from thegeneral-purpose processing apparatus due to a function of softwarecontained therein, so as to form the apparatus according to theembodiment of the present invention. The apparatus of the presentinvention comprises a plurality of units or modules, which areconfigured to execute corresponding steps. Those skilled in the art canunderstand how to write a program to implement actions of the units ormodules by reading the present specification.

With reference now to FIG. 12, the apparatus for determining a locationof a mobile device according to the embodiment of the present inventionwill be described in detail. The apparatus and the method are based onthe same inventive concept, the same or corresponding implementationdetails in the above method are also applicable to the apparatuscorresponding to the above method, and these implementation details willnot be described below. As described above, the mobile device canperform a continuous call. Specifically, the mobile device started acall in a first cell, and moved from the first cell to a second cellduring the call. Correspondingly, when the mobile device was located inthe first cell, a first CDR can be generated, and when the mobile devicemoved from the first cell to the common boundary between the first celland the second cell, a second CDR can be generated. The first CDR can atleast include information indicating the first cell where the mobiledevice resided and a first time at which the mobile device was locatedin the first cell, and the second CDR can at least include informationindicating the second cell to which the mobile device was handed overand a second time at which the handover was performed.

As shown in FIG. 12, the apparatus 100 for determining the location ofthe mobile device according to the embodiment of the present inventioncan include an analyzing device 101, a probability density determiningdevice 102, and a location determining device 103. The analyzing device101 can analyze CDRs of the mobile device to determine the first cellwhere the mobile device resided and time which the mobile device spentin moving from the first cell to the second cell. Specifically, theanalyzing device 101 can determine the first cell where the mobiledevice resided based on the first CDR described above, determine thesecond cell to which the mobile device was handed over according to thesecond CDR, and determine the time which the mobile device spent inmoving from the first cell to the second cell by calculating adifference between the second time and the first time.

The probability density determining device 102 can determine probabilitydensities that the mobile device was located at respective locationswithin the first cell, based on a moving speed of the mobile device andthe time which the mobile device spent in moving from the first cell tothe second cell. Briefly, the probability density determining device 102can determine the probability densities that the mobile device waslocated at the respective locations within the first cell by using thepartial ellipse integral model described above. The probability densitydetermining device 102 can select any location (i.e., the first locationdescribed above) within the first cell as a start point of the movementof the mobile device, select any location (i.e., the second locationdescribed above) on the common boundary as a terminal point of themovement of the mobile device, and establish the partial error ellipsebased on the first location and the second location as well as a maximummovement distance of the mobile device. This will determine all of thepossible locations during which the mobile device moved from the firstlocation to the second location and the probability densities that themobile device was located at these locations. Then, the probabilitydensity determining device 102 can determine the probability densitiesthat the mobile device was located at the respective locations withinthe first cell by integrating the probability densities for all possiblevalues of the first location and the second location.

FIG. 13 illustrates an exemplary structure of the probability densitydetermining device 102 shown in FIG. 12. As shown in FIG. 13, theprobability density determining device 102 can include a distancedetermining unit 1021, an ellipse establishing unit 1022 and aprobability density determining unit 1023. With the details ofoperations performed by the probability density determining device 102being described above with respect to step S402, the probability densitydetermining device 102 (and the respective units therein) are onlybriefly described herein. The distance determining unit 1021 candetermine a maximum movement distance of the mobile device, based on themoving speed of the mobile device and the time which the mobile devicespent in moving from the first cell to the second cell. In theembodiment of the present invention, the moving speed of the mobiledevice can be set to a maximum allowable moving speed of the mobiledevice, which can be determined according to a variety of factorsdescribed above.

The ellipse establishing unit 1022 can establish an error ellipse, withthe first location within the first cell and the second location on thecommon boundary between the first cell and the second cell being focusesand the maximum movement distance being a length of a major axis of theellipse. The ellipse establishing unit 1022 can establish the errorellipse in the manner described above. The first location can be anylocation within the first cell, and the second location can be anylocation on the common boundary between the first cell and the secondcell. The ellipse establishing unit 1022 can exclude, from the errorellipse, a portion of the error ellipse which is located outside thefirst cell. This is to form a partial error ellipse which only includesa portion of the error ellipse within the first cell or a common regionbetween the error ellipse and the first cell. A probability densityfunction denoting probability densities that the mobile device waslocated at respective locations within the partial error ellipsedetermined by the pair of the first location and the second location isshown as the above formula (1).

The probability density determining unit 1023 can determine theprobability densities that the mobile device was located at therespective locations within the first cell. This is done according tothe probability density function denoting the probability densities thatthe mobile device was located at the respective locations within thecommon region between the error ellipse and the first cell (i.e., thepartial error ellipse) and a joint distribution function of the firstlocation within the first cell and the second location on the commonboundary. Specifically, the probability density determining unit 1023can determine the probability densities that the mobile device waslocated at the respective locations within the first cell by using theabove formula (3).

Returning to FIG. 12, the location determining device 103 can determinepossible locations of the mobile device within the first cell accordingto the probability densities that the mobile device was located at therespective locations within the first cell. For example, the locationdetermining device 103 can determine a portion whose probability densityis 0 within the first cell as a location to which the mobile device isimpossible to arrive, and determine a portion whose probability densityis not 0 within the first cell as a possible location of the mobiledevice. Alternatively, the location determining device 103 can determinea portion whose probability density is less than a first thresholdwithin the first cell as a location to which the mobile device isimpossible to arrive, and determining a remaining portion as a possiblelocation of the mobile device. The location determining device 103 canfurther determine a magnitude of a probability that the mobile devicewas located at each location according to a calculated probabilitydensity of the location.

With the above apparatus, when the location of the mobile device isdetermined, the CDRs of the mobile device are considered to determine alocation change of the mobile device and the coverage of the cell and amoving ability of the mobile device per se are taken into account. Thus,the determined location of the mobile device has a higher accuracy

The apparatus according to the embodiment of the present invention hasbeen described where the maximum allowable moving speed of the mobiledevice is known or can be determined based on some factors, however,this is not limitative. The apparatus is further applicable to a casewhere the maximum allowable moving speed of the mobile device isunknown. In this case, a plurality of maximum allowable moving speedscan be set, then the above operation can be performed for each of themaximum allowable moving speeds. This is to determine the probabilitydensities that the mobile device was located at the respective locationswithin the first cell. If the probability densities that the mobiledevice was located at the respective locations within the first celldetermined for a certain maximum allowable moving speed is 0, it can bedetermined that the maximum allowable moving speed is incorrect. Thus,it can be determined that it is impossible for the mobile device to movein a corresponding movement mode.

Further, the apparatus for determining the location of the mobile deviceaccording to the embodiment of the present invention is also applicableto a case of three or more CDRs. Specifically, in the case where duringa call the mobile device entered the first cell from the third cell andthen entered the second cell from the first cell, the apparatus canestablish a partial error ellipse for the movement of the mobile devicefrom the common boundary between the third cell and the first cell tothe first cell in a manner similar to the embodiment described above. Todetermine the probability densities that the mobile device was locatedat the respective locations in the first cell based on the partial errorellipse, which will determine the possible locations of the mobiledevice in the first cell for the movement. In addition, for the movementof the mobile device from the first cell to the common boundary betweenthe first cell and the second cell, establish a partial error ellipse ina manner similar to that of the embodiment described above. To determinethe probability densities that the mobile device was located at therespective locations in the first cell based on the partial errorellipse, which will determine the possible locations of the mobiledevice in the first cell for the movement.

As described above, the location of the mobile device determined byusing the method and the apparatus according to the present inventionhas a higher accuracy. In an embodiment of the present invention, it isalso possible to combine the location of the mobile device determined byusing the method and the apparatus with other information, in order tofurther improve the accuracy of the determined location of the mobiledevice. The information can include GPS data of the mobile device, acredit card consumption record of a user who holds the mobile device ata known location, road network data within a cell, historical trajectoryor historical location distribution of the user in the cell, and/or ahistorical trajectory or historical location distribution of a user whohas some similarity to the user within the cell. As an example, if thereare GPS data of the mobile device at certain locations within the firstcell, it can be determined that the mobile device reached theselocations, thereby corresponding values of the above joint distributionfunction f(P₁, P₂) can be increased to adjust the probability densityfunction f(l^(1,2)) determined finally. As another example, if it isdetermined that the user made a purchase in a certain store according tocredit card transaction records of the user, it can be determined thatthe mobile device reached a location of the store, thereby acorresponding value of the above joint distribution function f(P₁,P₂)can be increased to adjust the probability density function f(l^(1,2))determined finally. As a further example, if the road network data inthe cell are known, and it can be determined that it is of a greaterprobability that the user who holds the mobile device was located on acertain road, a corresponding value of the above joint distributionfunction f(P₁,P₂) can be increased to adjust the probability densityfunction f(l^(1,2)) determined finally.

Moreover, the embodiments of the present invention have been describedin the case where the boundaries of the cells are “hard” boundaries,i.e., the joint distribution function f(P₁,P₂) of the point P₁ withinthe first cell and the point P₂ on the common boundary between the firstcell and the second cell is determined in a case where the boundaries ofthe cells are fixed, however, this is not limitative. The embodiments ofthe present invention are also applicable to the case where theboundaries of the cells are “soft” boundaries, in which case it is onlynecessary to adjust the value of the joint distribution functionf(P₁,P₂) according to the “soft” boundaries of the cells. Further,although it is mentioned above that the mobile device performs acontinuous call, this is not limitative, and the mobile device canperform a discontinuous call, as long as the mobile device moves fromone cell to another cell to produce corresponding CDRs.

Furthermore, it is to be appreciated that the embodiments of the methodand the apparatus described above are only illustrative rather thanlimitative. In other embodiments, it is possible to determine thelocation of the mobile device in a different manner. For example, asdescribed above, when the mobile device moved from the first cell to thecommon boundary between the first cell and the second cell within a timeinterval corresponding to the first CDR and the second CDR, the mobiledevice can only be located at locations from which the mobile device canreach the common boundary within the time interval. In the case where arequirement on the accuracy of the location of the mobile device is nothigh, a location in the first cell from which a distance to each pointon the common boundary does not exceed the maximum movement distance canbe determined as a possible location of the mobile device. If it isdesired to determine the location of the mobile device more accurately,any two locations can be selected from all possible locations as focusesto establish a partial error ellipse in the manner described above. Aprobability density that the mobile device was located at each possiblelocation can be determined by integration, so as to determine thelocation of the mobile device according to the probability density.

The present invention can be a system, a method, and/or a computerprogram product. The computer program product can include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device thatretains and stores instructions for use by an instruction executiondevice. The computer readable storage medium can be, for example, anelectronic storage device, a magnetic storage device, an optical storagedevice, an electromagnetic storage device, a semiconductor storagedevice, or any suitable combination of the foregoing. A non-exhaustivelist of more specific examples of the computer readable storage mediumincludes the following: a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), a static randomaccess memory (SRAM), a portable compact disc read-only memory (CD-ROM),a digital versatile disk (DVD), a memory stick, a floppy disk, amechanically encoded device such as punch-cards or raised structures ina groove having instructions recorded thereon, and any suitablecombination of the foregoing. A computer readable storage medium, asused herein, is not to be construed as being transitory signals per se,such as radio waves or other freely propagating electromagnetic waves,electromagnetic waves propagating through a waveguide or othertransmission media (e.g., light pulses passing through a fiber-opticcable), or electrical signals transmitted through a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network can comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention can be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of at least one programming language, including an objectoriented programming language such as Smalltalk, C++, and conventionalprocedural programming languages, such as the “C” programming languageor similar programming languages. The computer readable programinstructions can execute entirely on the user's computer, partly on theuser's computer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer or entirely on the remotecomputer or server. In the latter scenario, the remote computer can beconnected to the user's computer through any type of network, includinga local area network (LAN) or a wide area network (WAN), or theconnection can be made to an external computer (for example, through theInternet using an Internet Service Provider). In some embodiments,electronic circuitry including, for example, programmable logiccircuitry, field-programmable gate arrays (FPGA), or programmable logicarrays (PLA) can execute the computer readable program instructions byutilizing state information of the computer readable programinstructions to personalize the electronic circuitry, in order toperform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions can be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionscan also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions can also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process. The instructions which execute on the computer,other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams can represent a module, segment, or portionof code, which comprises at least one executable instruction forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock can occur out of the order noted in the figures. For example, twoblocks shown in succession can be executed substantially concurrently,or the blocks can sometimes be executed in the reverse order, dependingupon the functionality involved. It will also be noted that each blockof the block diagrams and/or flowchart illustration, and combinations ofblocks in the block diagrams and/or flowchart illustration, can beimplemented by special purpose hardware-based systems that perform thespecified functions or acts, or combinations of special purpose hardwareand computer instructions.

The descriptions of the various embodiments of the present inventionhave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

What is claimed is:
 1. A method for determining a location of a mobiledevice, comprising: analyzing call data records of the mobile device todetermine a first cell where the mobile device resided and time whichthe mobile device spent in moving from the first cell to a second cell;determining probability densities that the mobile device was located atrespective locations within the first cell, based on a moving speed ofthe mobile device and the time; determining a maximum movement distanceof the mobile device, based on the moving speed of the mobile device andthe time, wherein the moving speed of the mobile device is a maximumallowable moving speed of the mobile device; and determining possiblelocations of the mobile device within the first cell, according to theprobability densities.
 2. The method of claim 1, wherein the call datarecords include at least a first call data record generated when themobile device was located in the first cell and a second call datarecord generated in response to the mobile device moving from the firstcell to a common boundary between the first cell and the second cell. 3.The method of claim 2, wherein the first call data record includes afirst time at which the mobile device was located in the first cell, thesecond call data record includes a second time at which the mobiledevice moved to the common boundary between the first cell and thesecond cell, and the time which the mobile device spent in moving fromthe first cell to the second cell is a difference between the secondtime and the first time.
 4. The method of claim 3, wherein the call datarecords are directly at a continuous call, during which the mobiledevice moved from the first cell to the second cell.
 5. The method ofclaim 1, wherein the determining probability densities that the mobiledevice was located at respective locations within the first cell, basedon a moving speed of the mobile device and the time further includes:establishing an error ellipse, with a first location within the firstcell and a second location on the common boundary between the first celland the second cell being focuses, and with the maximum movementdistance as a length of a major axis of the error ellipse; anddetermining the probability densities that the mobile device was locatedat the respective locations within the first cell, according to aprobability density function denoting probability densities that themobile device was located at respective locations within a common regionbetween the error ellipse and the first cell and a joint distributionfunction of the first location within the first cell and the secondlocation on the common boundary.
 6. The method of claim 5, wherein theprobability density function denoting the probability densities that themobile device was located at the respective locations within the commonregion between the error ellipse and the first cell is a reciprocal ofan area of the common region.
 7. An apparatus for determining a locationof a mobile device, comprising: an analyzing device, configured toanalyze call data records of the mobile device to determine a first cellwhere the mobile device resided and time which the mobile device spentin moving from the first cell to a second cell; a probability densitydetermining device, configured to determine probability densities thatthe mobile device was located at respective locations within the firstcell, based on a moving speed of the mobile device and the time; adistance determining unit, configured to determine a maximum movementdistance of the mobile device, based on the moving speed of the mobiledevice and the time, wherein the moving speed of the mobile device is amaximum allowable moving speed of the mobile device; and a locationdetermining device, configured to determine possible locations of themobile device within the first cell, according to the probabilitydensities.
 8. The apparatus of claim 7, wherein the call data records atleast include a first call data record generated when the mobile devicewas located in the first cell, and a second call data record generatedin response to the mobile device moving from the first cell to a commonboundary between the first cell and the second cell.
 9. The apparatus ofclaim 8, wherein, the first call data record includes a first time atwhich the mobile device was located in the first cell, the second calldata record includes a second time at which the mobile device moved tothe common boundary between the first cell and the second cell, and thetime which the mobile device spent in moving from the first cell to thesecond cell is a difference between the second time and the first time.10. The apparatus of claim 9, wherein the call data records are directlyat a continuous call, during which the mobile device moved from thefirst cell to the second cell.
 11. The apparatus of claim 7, wherein theprobability density determining device further includes: an ellipseestablishing unit, configured to establish an error ellipse, with afirst location within the first cell and a second location on the commonboundary between the first cell and the second cell being focuses, andwith the maximum movement distance as a length of a major axis of theellipse; and a probability density determining unit, configured todetermine the probability densities that the mobile device was locatedat the respective locations within the first cell, according to aprobability density function denoting probability densities that themobile device was located at respective locations within a common regionbetween the error ellipse and the first cell and a joint distributionfunction of the first location within the first cell and the secondlocation on the common boundary.
 12. The apparatus of claim 11, whereinthe probability density function denoting the probability densities thatthe mobile device was located at the respective locations within thecommon region between the error ellipse and the first cell is areciprocal of an area of the common region.